


// XS 基础服务库
#include <xsbase.h>
#if defined(_WIN32) || defined(_WIN64)
	// windows 方案
#else
	// 其他平台方案
	#include <pthread.h>
	#include <sys/utsname.h>
#endif



// 全局定义
#include "module/define.h"

// 安全防护模块
#include "module/guard.h"

// 独立页面 API
#include "module/page.h"

// 模板相关功能
#include "module/template.h"

// 安装相关功能
#include "module/install.h"

// Session 相关功能
#include "module/session.h"

// 全局配置相关功能
#include "module/option.h"

// 数据库相关功能
#include "module/db.h"

// 权限管理模块
#include "module/auth.h"

// 日志记录模块
#include "module/logs.h"

// 性能监控模块
#include "module/performance.h"

// 防火墙模块
#include "module/firewall.h"



// 路由调用 - HTTP
#include "route_http/auth.h"
#include "route_http/index.h"
#include "route_http/logs.h"
#include "route_http/option.h"
#include "route_http/login.h"
#include "route_http/other.h"
#include "route_http/performance.h"
#include "route_http/firewall.h"
#include "route_http/test.h"
#include "route_http/view_home.h"



// 全局静态路由表
#include "route.h"

// HTTP 协议处理
#include "module/http.h"





// 服务初始化
void ServiceInit(XS_ServerObject objServer, XS_HostObject objHost)
{
	
	// 初始化全局定义
	printf("        Define_Init \n");
	Define_Init(objServer, objHost);
	
	// 初始化安全防护模块
	printf("        Guard_Init \n");
	Guard_Init();
	
	// 初始化模板渲染功能
	printf("        Template_Init \n");
	Template_Init();
	
	// 安装相关功能初始化
	printf("        Install_Init \n");
	Install_Init();
	
	// 创建全局 Session 表
	printf("        Session_Init \n");
	Session_Init();
	
	// 连接到主数据库
	printf("        DB_Init \n");
	DB_Init();
	
	// 加载全局配置
	printf("        Option_Init \n");
	Option_Init();
	
	// 初始化 HTTP 路由表
	printf("        RouteHTTP_Init \n");
	RouteHTTP_Init();
	
	// 初始化权限管理模块
	printf("        Auth_Init \n");
	Auth_Init();
	
	// 初始化日志记录模块
	printf("        Logs_Init \n");
	Logs_Init();
	
	// 初始化性能监控模块
	printf("        Performance_Init \n");
	Performance_Init();
	
	// 初始化防火墙模块
	printf("        firewall_init \n");
	firewall_init();
	
}



// 服务卸载
void ServiceUnit(XS_ServerObject objServer, XS_HostObject objHost)
{
	
	// 卸载防火墙模块
	printf("        firewall_uninit \n");
	firewall_uninit();
	
	// 卸载性能监控模块
	printf("        Performance_Unit \n");
	Performance_Unit();
	
	// 卸载日志记录模块
	printf("        Logs_Unit \n");
	Logs_Unit();
	
	// 卸载权限管理模块
	printf("        Auth_Unit \n");
	Auth_Unit();
	
	// 卸载 HTTP 路由表
	printf("        RouteHTTP_Unit \n");
	RouteHTTP_Unit();
	
	// 卸载配置模块
	printf("        Option_Unit \n");
	Option_Unit();
	
	// 释放数据库
	printf("        DB_Unit \n");
	DB_Unit();
	
	// 卸载 Session 模块
	printf("        Session_Unit \n");
	Session_Unit();
	
	// 卸载安装模块
	printf("        Install_Unit \n");
	Install_Unit();
	
	// 卸载模板模块
	printf("        Template_Unit \n");
	Template_Unit();
	
	// 卸载防护模块
	printf("        Guard_Unit \n");
	Guard_Unit();
	
	// 卸载全局数据
	printf("        Define_Unit \n");
	Define_Unit();
	
}